package com.ruoyi.mateRequistion.mapper;

import com.ruoyi.mateRequistion.domain.KeepSample;
import com.ruoyi.mateRequistion.domain.KeepSampleModel;
import com.ruoyi.mateRequistion.domain.ManageInput;
import com.ruoyi.mateRequistion.domain.ManageInputModel;
import com.ruoyi.mateRequistion.domain.ManageReviewInformation;
import com.ruoyi.mateRequistion.domain.ManageSign;
import com.ruoyi.mateRequistion.domain.ManageSignModel;
import com.ruoyi.mateRequistion.domain.MateRequistion;
import com.ruoyi.mateRequistion.domain.MateRequistionModel;
import com.ruoyi.mateRequistion.domain.ProductRetention;
import com.ruoyi.mateRequistion.domain.ProductRetentionModel;
import com.ruoyi.mateRequistion.domain.SampleHandle;
import com.ruoyi.mateRequistion.domain.SampleHandleModel;
import com.ruoyi.mateRequistion.domain.SampleRequistion;
import com.ruoyi.mateRequistion.domain.SampleRequistionModel;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * @Author
 * @Version 1.0
 */
@Mapper
public interface MateRequistionMapper {

    public int addMateRequistion(MateRequistion mateRequistion);

    public int addMateRequistionModel(MateRequistionModel mateRequistionModel);

    public void removeMateRequistion(Long requistionId);

    public void removeMateRequistionModel(Long requistionId);

    public List<MateRequistion> requistionList(MateRequistion mateRequistion);

    public MateRequistion selectMateRequistion(Long requistionId);

    public MateRequistion selectMateRequistionLast(Map<String, Object> resMap);

    public List<MateRequistionModel> selectMateRequistionModel(Long requistionId);

    public List<MateRequistion> AuditRequistion(Long deptId);

    public int updateMateRequistion(MateRequistion mateRequistion);

    public int updateMateRequistionModel(MateRequistionModel mateRequistionModel);

    public MateRequistionModel selectRequistionModel(MateRequistionModel mateRequistionModel);

    public int selectSumAllnum(MateRequistionModel mateRequistionModel);

    public int addManageInput(ManageInput manageInput);

    public int addManageInputModel(ManageInputModel manageInputModel);

    public List<ManageInput> manageInputList(ManageInput manageInput);

    public ManageInput selectManageInput(Long inputId);

    public int addManageReviewInformation(ManageReviewInformation manageReviewInformation);

    public List<ManageReviewInformation> reviewInformationList(ManageReviewInformation manageReviewInformation);

    public ManageReviewInformation selectManageReviewInformation(Long informationId);

    public int addManageSign(ManageSign manageSign);

    public int addManageSignModel(ManageSignModel manageSignModel);

    public List<ManageSign> manageSignList(ManageSign manageSign);

    public ManageSign selectManageSign(Long manageSignId);

    public int addProductRetention(ProductRetention productRetention);

    public int addProductRetentionModel(ProductRetentionModel productRetentionModel);

    public List<ProductRetention> productRetentionList(ProductRetention productRetention);

    public ProductRetention selectProductRetention(Long retentionId);

    public int addSampleRequisition(SampleRequistion sampleRequistion);

    public int addSampleRequisitionModel(SampleRequistionModel sampleRequistionModel);

    public int addKeepSample(KeepSample keepSample);

    public  int addKeepSampleModel(KeepSampleModel keepSampleModel);

    public List<SampleHandle> sampleHandleList(SampleHandle sampleHandle);

    public SampleHandle selectSampleHandle(Long sampleHandleId);

    public List<KeepSample> keepSampleList(KeepSample keepSample);

    public KeepSample selectKeepSample(Long keepId);

    public int addSampleHandle(SampleHandle sampleHandle);

    public int addSampleHandleModel(SampleHandleModel sampleHandleModel);

    public List<SampleRequistion> sampleRequistionList(SampleRequistion sampleRequistion);

    public SampleRequistion selectSampleRequistion(Long sampleId);

}
